//
//  UserAccountViewModel.swift
//  Swift微博
//
//  Created by adel on 2017/8/25.
//  Copyright © 2017年 com.bailun91. All rights reserved.
//

import UIKit

//如果不需要使用NSObject类的功能,可以不用继承
class UserAccountViewModel {

    // MARK:- 一般设计成单例
    static let sharedUserAccountViewModel = UserAccountViewModel()
    
    // MARK:- 定义属性
    var account : UserAccount?
    
    // MARK:- 沙盒路径(计算属性)
      var accountPath : String {

        let accountPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true).first!
        return (accountPath as NSString).appendingPathComponent("accout.plist")
    }
    
    // MARK:- 是否登录
    var isLogin : Bool {
        if account == nil {
            return false
        }
        
        guard let expiresDate = account?.expires_date else {
            return false
        }
        
        return expiresDate.compare(Date()) == ComparisonResult.orderedDescending
    }

    // MARK:- 重写init()方法,让类一创建就给account赋值
    init(){
        // 1.从沙盒中读取中归档的信息
        account = NSKeyedUnarchiver.unarchiveObject(withFile: accountPath) as? UserAccount

    }
}
